Inductive Datatypes in HOL - Lessons Learned in Formal-Logic Engineering
نویسندگان
چکیده
Isabelle/HOL has recently acquired new versions of definitional packages for inductive datatypes and primitive recursive functions. In contrast to its predecessors and most other implementations, Isabelle/HOL datatypes may be mutually and indirect recursive, even infinitely branching. We also support inverted datatype definitions for characterizing existing types as being inductive ones later. All our constructions are fully definitional according to established HOL tradition. Stepping back from the logical details, we also see this work as a typical example of what could be called “Formal-Logic Engineering”. We observe that building realistic theorem proving environments involves further issues rather than pure logic only.
منابع مشابه
Nitpick: A Counterexample Generator for Higher-Order Logic Based on a Relational Model Finder
Anecdotal evidence suggests that most “theorems” initially given to an interactive theorem prover do not hold, typically because of a typo or a missing assumption, but sometimes because of a deep flaw. Modern proof assistants for higher-order logic (HOL) provide counterexample generators that can be run on putative theorems or on specific subgoals in a proof to spare users the Sisyphean task of...
متن کاملNested Multisets, Hereditary Multisets, and Syntactic Ordinals in Isabelle/HOL
We present a collection of formalized results about finite nested multisets, developed using the Isabelle/HOL proof assistant. The nested multiset order is a generalization of the multiset order that can be used to prove termination of processes. Hereditary multisets, a variant of nested multisets, offer a convenient representation of ordinals below 0. In Isabelle/HOL, both nested and hereditar...
متن کاملFoundational (Co)datatypes and (Co)recursion for Higher-Order Logic
We describe a line of work that started in 2011 towards enriching Isabelle/HOL’s language with coinductive datatypes, which allow infinite values, and with a more expressive notion of inductive datatype than previously supported by any system based on higher-order logic. These (co)datatypes are complemented by definitional principles for (co)recursive functions and reasoning principles for (co)...
متن کاملExecuting Higher Order Logic
We report on the design of a prototyping component for the theorem prover Isabelle/HOL. Specifications consisting of datatypes, recursive functions and inductive definitions are compiled into a functional program. Functions and inductively defined relations can be mixed. Inductive definitions must be such that they can be executed in Prolog style but requiring only matching rather than unificat...
متن کاملFormal Verificaction of the ADSP-2100 Processor Using the HOL Theorem Prover
In this technical report, we present the application of formal verification to digital signal processors of the family ADSP-2100 using the HOL (Higher Order Logic) theorem prover. To solve the problem of complexity related to the big number of parameters of the processor, we used a structured method based on our knowledge about this processors family. In this method, we worked on the units of t...
متن کامل